package com.coderman.infosys.auth.adapter.convert;

import com.coderman.infosys.auth.adapter.vo.authority.AuthorityVO;
import com.coderman.infosys.auth.adapter.vo.authority.request.CreateAuthorityRequestVO;
import com.coderman.infosys.auth.adapter.vo.authority.request.UpdateAuthorityRequestVO;
import com.coderman.infosys.auth.domain.bo.authority.AuthorityBO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;

import java.util.List;

/**
* @Description:AuthorityConvertervobo接口
* @Author:
* @CreateTime:2022-01-04 15:27:39
* @version v1.0
*/
@Mapper
public interface AuthorityConverter{
	AuthorityConverter INSTANCE = Mappers.getMapper(AuthorityConverter.class);

	/**
	 *
	 * @Description:
	 * @return AuthorityBO
	 */
	 AuthorityBO vo2bo(AuthorityVO authorityVO);
	/**
	 *
	 * @Description:
	 * @return List<AuthorityBO>
	 */
	 List<AuthorityBO> VOs2BOs(List<UpdateAuthorityRequestVO> updateAuthorityRequestVOList);
	/**
	 *
	 * @Description:
	 * @return List<AuthorityBO>
	 */
	 List<AuthorityBO> voList2BoList(List<AuthorityVO> vOList);
	/**
	 *
	 * @Description:
	 * @return List<AuthorityBO>
	 */
	 List<AuthorityBO> vos2bos(List<CreateAuthorityRequestVO> createAuthorityRequestVOList);
	/**
	 *
	 * @Description:
	 * @return AuthorityBO
	 */
	 AuthorityBO vo2bo(UpdateAuthorityRequestVO updateAuthorityRequestVO);
	/**
	 *
	 * @Description:
	 * @return List<AuthorityVO>
	 */
	 List<AuthorityVO> boList2voList(List<AuthorityBO> authorityBOList);
	/**
	 *
	 * @Description:
	 * @return AuthorityBO
	 */
	 AuthorityBO vo2bo(CreateAuthorityRequestVO createAuthorityRequestVO);
	/**
	 *
	 * @Description:
	 * @return AuthorityVO
	 */
	 AuthorityVO bo2VO(AuthorityBO authorityBO);
}